package cn.tworice.system.service.role;



import cn.tworice.mybatis.vo.PageParam;
import cn.tworice.system.dao.user.po.UserDO;
import cn.tworice.system.dao.role.po.RoleDO;
import cn.tworice.system.dao.role.po.RoleResourcesDO;

import java.util.List;
import java.util.Map;

public interface RoleService {

    Map<String,Object> getRoleList(PageParam pageParam, RoleDO entity);

    List<RoleDO> getRoleListByUid(String userId);

    boolean addUserToRole(String[] userId, Integer roleId);

    void delAdminToRole(String[] adminIds, Integer roleId);

    List<UserDO> getNoRoleAdmin(int roleId);

    boolean delRole(List<Integer> roleId);

    int editRole(Integer roleId, String roleName);

    List<RoleResourcesDO> getResourcesByRoleId(Integer roleId);

    Boolean updateRoleResources(Integer[] haveResources, Integer[] updateResources, Integer roleId);

    void setRoleResources(Integer roleId, Integer[] resourcesId);

    void delAdminRoleByAdmin(String[] ids);

    List<Integer> getRoleIdsByUid(String userId);

    void removeResourcesInfo(Integer[] ids);

}
